An incremental backup preserves data by not creating multiple copies that are based on the differences in those data: a successive copy of the data contains only that portion which has changed since the preceding copy has been created.
Contents |
The most basic form of incremental backup consists of identifying, recording and, thus, preserving only those files that have changed since the last backup Since changes are typically low, incremental backups are much smaller and quicker than full backups. For instance, following a full backup on Friday, a Monday backup will contain only those files that changed since Friday. A Tuesday backup contains only those files that changed since Monday, and so on. A full restoration of data will naturally be slower, since all increments must be restored. Should any one of the copies created fail, including the first (full), restoration will be incomplete.[1]
A Unix example would be:
rsync -e ssh -va --link-dest=$dst/hourly.1 $remoteserver:$remotepath $dst/hourly.0
The use of rsync's --link-dest option is what makes this command an example of incremental backup.
A more sophisticated incremental backup scheme involves multiple numbered backup levels. A full backup is level 0. A level n backup will back up everything that has changed since the most recent level n-1 backup. Suppose for instance that a level 0 backup was taken on a Sunday. A level 1 backup taken on Monday would include only changes made since Sunday. A level 2 backup taken on Tuesday would include only changes made since Monday. A level 3 backup taken on Wednesday would include only changes made since Tuesday. If a level 2 backup was taken on Thursday, it would include all changes made since Monday because Monday was the most recent level n-1 backup.
An incremental backup of the changes made between two instances of a mirror is called a reverse incremental. By applying a reverse incremental to a mirror, the result will be a previous version of the mirror.
A Synthetic backup is an alternative method of creating full backups. Instead of reading and backing up data directly from the disk, it will synthesize the data from the previous full backup (either a regular full backup for the first backup, or the previous synthetic full backup) and the periodic incremental backups. As only the incremental backups read data from the disk, these are the only files that need to be transferred during Offsite Replication. This greatly reduces the bandwidth needed for Offsite Replication.
This style is similar to the Synthetic backup concept. After an initial full backup, only the incremental backups are sent to a centralized backup server. This server keeps track of all the incrementals and sends the proper data back to the server during restores. This can be implemented by sending each incremental directly to tape as it is taken and then refactoring the tapes as necessary. If enough disk space is available, an online mirror can be maintained along with previous incremental changes so that the current or older versions of the systems being backed up can be restored.This is a suitable method in case of banking systems.
This method backs up only the blocks within the file that changed. This requires a higher level of integration between the sender and receiver.
These backup technologies are similar to the "block level incremental" backup method; however, the byte (or binary) incremental or differential backup method is based on a binary variation of the files compared to the previous backup: while the block-based technologies work with heavy changing units (blocks of 8K, 4K or 1K), the byte-based technologies work with the minimum unit, saving space when reflecting a change on a file. Another important difference is that they work independently on the file system. At the moment, these are the technologies that achieve the highest relative compression of the data, turning into a great advantage for the security copies carried out through the Internet.
While the terms above are in very wide use, some backup vendors reverse the meaning of "incremental" and "differential" although using these terms incorrectly could lead to botched backup jobs and loss of data. One case for example is Microsoft with NtBackup.exe.[2] However, no other such vendor is known today. On the other hand, it is technically accurate to refer to a differential backup as a cumulative incremental backup but this use is discouraged as it is unnecessarily confusing. Additionally, while it is technically accurate to refer to an incremental backup as a differential incremental backup, this use is also discouraged and unnecessarily confusing.